package com.base.po.voip;

import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;

public class RebateOrdersPddExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    public RebateOrdersPddExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andOrderIdIsNull() {
            addCriterion("Order_id is null");
            return (Criteria) this;
        }

        public Criteria andOrderIdIsNotNull() {
            addCriterion("Order_id is not null");
            return (Criteria) this;
        }

        public Criteria andOrderIdEqualTo(String value) {
            addCriterion("Order_id =", value, "orderId");
            return (Criteria) this;
        }

        public Criteria andOrderIdNotEqualTo(String value) {
            addCriterion("Order_id <>", value, "orderId");
            return (Criteria) this;
        }

        public Criteria andOrderIdGreaterThan(String value) {
            addCriterion("Order_id >", value, "orderId");
            return (Criteria) this;
        }

        public Criteria andOrderIdGreaterThanOrEqualTo(String value) {
            addCriterion("Order_id >=", value, "orderId");
            return (Criteria) this;
        }

        public Criteria andOrderIdLessThan(String value) {
            addCriterion("Order_id <", value, "orderId");
            return (Criteria) this;
        }

        public Criteria andOrderIdLessThanOrEqualTo(String value) {
            addCriterion("Order_id <=", value, "orderId");
            return (Criteria) this;
        }

        public Criteria andOrderIdLike(String value) {
            addCriterion("Order_id like", value, "orderId");
            return (Criteria) this;
        }

        public Criteria andOrderIdNotLike(String value) {
            addCriterion("Order_id not like", value, "orderId");
            return (Criteria) this;
        }

        public Criteria andOrderIdIn(List<String> values) {
            addCriterion("Order_id in", values, "orderId");
            return (Criteria) this;
        }

        public Criteria andOrderIdNotIn(List<String> values) {
            addCriterion("Order_id not in", values, "orderId");
            return (Criteria) this;
        }

        public Criteria andOrderIdBetween(String value1, String value2) {
            addCriterion("Order_id between", value1, value2, "orderId");
            return (Criteria) this;
        }

        public Criteria andOrderIdNotBetween(String value1, String value2) {
            addCriterion("Order_id not between", value1, value2, "orderId");
            return (Criteria) this;
        }

        public Criteria andOrderSnIsNull() {
            addCriterion("Order_sn is null");
            return (Criteria) this;
        }

        public Criteria andOrderSnIsNotNull() {
            addCriterion("Order_sn is not null");
            return (Criteria) this;
        }

        public Criteria andOrderSnEqualTo(String value) {
            addCriterion("Order_sn =", value, "orderSn");
            return (Criteria) this;
        }

        public Criteria andOrderSnNotEqualTo(String value) {
            addCriterion("Order_sn <>", value, "orderSn");
            return (Criteria) this;
        }

        public Criteria andOrderSnGreaterThan(String value) {
            addCriterion("Order_sn >", value, "orderSn");
            return (Criteria) this;
        }

        public Criteria andOrderSnGreaterThanOrEqualTo(String value) {
            addCriterion("Order_sn >=", value, "orderSn");
            return (Criteria) this;
        }

        public Criteria andOrderSnLessThan(String value) {
            addCriterion("Order_sn <", value, "orderSn");
            return (Criteria) this;
        }

        public Criteria andOrderSnLessThanOrEqualTo(String value) {
            addCriterion("Order_sn <=", value, "orderSn");
            return (Criteria) this;
        }

        public Criteria andOrderSnLike(String value) {
            addCriterion("Order_sn like", value, "orderSn");
            return (Criteria) this;
        }

        public Criteria andOrderSnNotLike(String value) {
            addCriterion("Order_sn not like", value, "orderSn");
            return (Criteria) this;
        }

        public Criteria andOrderSnIn(List<String> values) {
            addCriterion("Order_sn in", values, "orderSn");
            return (Criteria) this;
        }

        public Criteria andOrderSnNotIn(List<String> values) {
            addCriterion("Order_sn not in", values, "orderSn");
            return (Criteria) this;
        }

        public Criteria andOrderSnBetween(String value1, String value2) {
            addCriterion("Order_sn between", value1, value2, "orderSn");
            return (Criteria) this;
        }

        public Criteria andOrderSnNotBetween(String value1, String value2) {
            addCriterion("Order_sn not between", value1, value2, "orderSn");
            return (Criteria) this;
        }

        public Criteria andGoodsIdIsNull() {
            addCriterion("Goods_id is null");
            return (Criteria) this;
        }

        public Criteria andGoodsIdIsNotNull() {
            addCriterion("Goods_id is not null");
            return (Criteria) this;
        }

        public Criteria andGoodsIdEqualTo(String value) {
            addCriterion("Goods_id =", value, "goodsId");
            return (Criteria) this;
        }

        public Criteria andGoodsIdNotEqualTo(String value) {
            addCriterion("Goods_id <>", value, "goodsId");
            return (Criteria) this;
        }

        public Criteria andGoodsIdGreaterThan(String value) {
            addCriterion("Goods_id >", value, "goodsId");
            return (Criteria) this;
        }

        public Criteria andGoodsIdGreaterThanOrEqualTo(String value) {
            addCriterion("Goods_id >=", value, "goodsId");
            return (Criteria) this;
        }

        public Criteria andGoodsIdLessThan(String value) {
            addCriterion("Goods_id <", value, "goodsId");
            return (Criteria) this;
        }

        public Criteria andGoodsIdLessThanOrEqualTo(String value) {
            addCriterion("Goods_id <=", value, "goodsId");
            return (Criteria) this;
        }

        public Criteria andGoodsIdLike(String value) {
            addCriterion("Goods_id like", value, "goodsId");
            return (Criteria) this;
        }

        public Criteria andGoodsIdNotLike(String value) {
            addCriterion("Goods_id not like", value, "goodsId");
            return (Criteria) this;
        }

        public Criteria andGoodsIdIn(List<String> values) {
            addCriterion("Goods_id in", values, "goodsId");
            return (Criteria) this;
        }

        public Criteria andGoodsIdNotIn(List<String> values) {
            addCriterion("Goods_id not in", values, "goodsId");
            return (Criteria) this;
        }

        public Criteria andGoodsIdBetween(String value1, String value2) {
            addCriterion("Goods_id between", value1, value2, "goodsId");
            return (Criteria) this;
        }

        public Criteria andGoodsIdNotBetween(String value1, String value2) {
            addCriterion("Goods_id not between", value1, value2, "goodsId");
            return (Criteria) this;
        }

        public Criteria andGoodsNameIsNull() {
            addCriterion("Goods_name is null");
            return (Criteria) this;
        }

        public Criteria andGoodsNameIsNotNull() {
            addCriterion("Goods_name is not null");
            return (Criteria) this;
        }

        public Criteria andGoodsNameEqualTo(String value) {
            addCriterion("Goods_name =", value, "goodsName");
            return (Criteria) this;
        }

        public Criteria andGoodsNameNotEqualTo(String value) {
            addCriterion("Goods_name <>", value, "goodsName");
            return (Criteria) this;
        }

        public Criteria andGoodsNameGreaterThan(String value) {
            addCriterion("Goods_name >", value, "goodsName");
            return (Criteria) this;
        }

        public Criteria andGoodsNameGreaterThanOrEqualTo(String value) {
            addCriterion("Goods_name >=", value, "goodsName");
            return (Criteria) this;
        }

        public Criteria andGoodsNameLessThan(String value) {
            addCriterion("Goods_name <", value, "goodsName");
            return (Criteria) this;
        }

        public Criteria andGoodsNameLessThanOrEqualTo(String value) {
            addCriterion("Goods_name <=", value, "goodsName");
            return (Criteria) this;
        }

        public Criteria andGoodsNameLike(String value) {
            addCriterion("Goods_name like", value, "goodsName");
            return (Criteria) this;
        }

        public Criteria andGoodsNameNotLike(String value) {
            addCriterion("Goods_name not like", value, "goodsName");
            return (Criteria) this;
        }

        public Criteria andGoodsNameIn(List<String> values) {
            addCriterion("Goods_name in", values, "goodsName");
            return (Criteria) this;
        }

        public Criteria andGoodsNameNotIn(List<String> values) {
            addCriterion("Goods_name not in", values, "goodsName");
            return (Criteria) this;
        }

        public Criteria andGoodsNameBetween(String value1, String value2) {
            addCriterion("Goods_name between", value1, value2, "goodsName");
            return (Criteria) this;
        }

        public Criteria andGoodsNameNotBetween(String value1, String value2) {
            addCriterion("Goods_name not between", value1, value2, "goodsName");
            return (Criteria) this;
        }

        public Criteria andGoodsThumbnailUrlIsNull() {
            addCriterion("Goods_thumbnail_url is null");
            return (Criteria) this;
        }

        public Criteria andGoodsThumbnailUrlIsNotNull() {
            addCriterion("Goods_thumbnail_url is not null");
            return (Criteria) this;
        }

        public Criteria andGoodsThumbnailUrlEqualTo(String value) {
            addCriterion("Goods_thumbnail_url =", value, "goodsThumbnailUrl");
            return (Criteria) this;
        }

        public Criteria andGoodsThumbnailUrlNotEqualTo(String value) {
            addCriterion("Goods_thumbnail_url <>", value, "goodsThumbnailUrl");
            return (Criteria) this;
        }

        public Criteria andGoodsThumbnailUrlGreaterThan(String value) {
            addCriterion("Goods_thumbnail_url >", value, "goodsThumbnailUrl");
            return (Criteria) this;
        }

        public Criteria andGoodsThumbnailUrlGreaterThanOrEqualTo(String value) {
            addCriterion("Goods_thumbnail_url >=", value, "goodsThumbnailUrl");
            return (Criteria) this;
        }

        public Criteria andGoodsThumbnailUrlLessThan(String value) {
            addCriterion("Goods_thumbnail_url <", value, "goodsThumbnailUrl");
            return (Criteria) this;
        }

        public Criteria andGoodsThumbnailUrlLessThanOrEqualTo(String value) {
            addCriterion("Goods_thumbnail_url <=", value, "goodsThumbnailUrl");
            return (Criteria) this;
        }

        public Criteria andGoodsThumbnailUrlLike(String value) {
            addCriterion("Goods_thumbnail_url like", value, "goodsThumbnailUrl");
            return (Criteria) this;
        }

        public Criteria andGoodsThumbnailUrlNotLike(String value) {
            addCriterion("Goods_thumbnail_url not like", value, "goodsThumbnailUrl");
            return (Criteria) this;
        }

        public Criteria andGoodsThumbnailUrlIn(List<String> values) {
            addCriterion("Goods_thumbnail_url in", values, "goodsThumbnailUrl");
            return (Criteria) this;
        }

        public Criteria andGoodsThumbnailUrlNotIn(List<String> values) {
            addCriterion("Goods_thumbnail_url not in", values, "goodsThumbnailUrl");
            return (Criteria) this;
        }

        public Criteria andGoodsThumbnailUrlBetween(String value1, String value2) {
            addCriterion("Goods_thumbnail_url between", value1, value2, "goodsThumbnailUrl");
            return (Criteria) this;
        }

        public Criteria andGoodsThumbnailUrlNotBetween(String value1, String value2) {
            addCriterion("Goods_thumbnail_url not between", value1, value2, "goodsThumbnailUrl");
            return (Criteria) this;
        }

        public Criteria andGoodsQuantityIsNull() {
            addCriterion("Goods_quantity is null");
            return (Criteria) this;
        }

        public Criteria andGoodsQuantityIsNotNull() {
            addCriterion("Goods_quantity is not null");
            return (Criteria) this;
        }

        public Criteria andGoodsQuantityEqualTo(Integer value) {
            addCriterion("Goods_quantity =", value, "goodsQuantity");
            return (Criteria) this;
        }

        public Criteria andGoodsQuantityNotEqualTo(Integer value) {
            addCriterion("Goods_quantity <>", value, "goodsQuantity");
            return (Criteria) this;
        }

        public Criteria andGoodsQuantityGreaterThan(Integer value) {
            addCriterion("Goods_quantity >", value, "goodsQuantity");
            return (Criteria) this;
        }

        public Criteria andGoodsQuantityGreaterThanOrEqualTo(Integer value) {
            addCriterion("Goods_quantity >=", value, "goodsQuantity");
            return (Criteria) this;
        }

        public Criteria andGoodsQuantityLessThan(Integer value) {
            addCriterion("Goods_quantity <", value, "goodsQuantity");
            return (Criteria) this;
        }

        public Criteria andGoodsQuantityLessThanOrEqualTo(Integer value) {
            addCriterion("Goods_quantity <=", value, "goodsQuantity");
            return (Criteria) this;
        }

        public Criteria andGoodsQuantityIn(List<Integer> values) {
            addCriterion("Goods_quantity in", values, "goodsQuantity");
            return (Criteria) this;
        }

        public Criteria andGoodsQuantityNotIn(List<Integer> values) {
            addCriterion("Goods_quantity not in", values, "goodsQuantity");
            return (Criteria) this;
        }

        public Criteria andGoodsQuantityBetween(Integer value1, Integer value2) {
            addCriterion("Goods_quantity between", value1, value2, "goodsQuantity");
            return (Criteria) this;
        }

        public Criteria andGoodsQuantityNotBetween(Integer value1, Integer value2) {
            addCriterion("Goods_quantity not between", value1, value2, "goodsQuantity");
            return (Criteria) this;
        }

        public Criteria andGoodsPriceIsNull() {
            addCriterion("Goods_price is null");
            return (Criteria) this;
        }

        public Criteria andGoodsPriceIsNotNull() {
            addCriterion("Goods_price is not null");
            return (Criteria) this;
        }

        public Criteria andGoodsPriceEqualTo(BigDecimal value) {
            addCriterion("Goods_price =", value, "goodsPrice");
            return (Criteria) this;
        }

        public Criteria andGoodsPriceNotEqualTo(BigDecimal value) {
            addCriterion("Goods_price <>", value, "goodsPrice");
            return (Criteria) this;
        }

        public Criteria andGoodsPriceGreaterThan(BigDecimal value) {
            addCriterion("Goods_price >", value, "goodsPrice");
            return (Criteria) this;
        }

        public Criteria andGoodsPriceGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("Goods_price >=", value, "goodsPrice");
            return (Criteria) this;
        }

        public Criteria andGoodsPriceLessThan(BigDecimal value) {
            addCriterion("Goods_price <", value, "goodsPrice");
            return (Criteria) this;
        }

        public Criteria andGoodsPriceLessThanOrEqualTo(BigDecimal value) {
            addCriterion("Goods_price <=", value, "goodsPrice");
            return (Criteria) this;
        }

        public Criteria andGoodsPriceIn(List<BigDecimal> values) {
            addCriterion("Goods_price in", values, "goodsPrice");
            return (Criteria) this;
        }

        public Criteria andGoodsPriceNotIn(List<BigDecimal> values) {
            addCriterion("Goods_price not in", values, "goodsPrice");
            return (Criteria) this;
        }

        public Criteria andGoodsPriceBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("Goods_price between", value1, value2, "goodsPrice");
            return (Criteria) this;
        }

        public Criteria andGoodsPriceNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("Goods_price not between", value1, value2, "goodsPrice");
            return (Criteria) this;
        }

        public Criteria andOrderAmountIsNull() {
            addCriterion("Order_amount is null");
            return (Criteria) this;
        }

        public Criteria andOrderAmountIsNotNull() {
            addCriterion("Order_amount is not null");
            return (Criteria) this;
        }

        public Criteria andOrderAmountEqualTo(BigDecimal value) {
            addCriterion("Order_amount =", value, "orderAmount");
            return (Criteria) this;
        }

        public Criteria andOrderAmountNotEqualTo(BigDecimal value) {
            addCriterion("Order_amount <>", value, "orderAmount");
            return (Criteria) this;
        }

        public Criteria andOrderAmountGreaterThan(BigDecimal value) {
            addCriterion("Order_amount >", value, "orderAmount");
            return (Criteria) this;
        }

        public Criteria andOrderAmountGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("Order_amount >=", value, "orderAmount");
            return (Criteria) this;
        }

        public Criteria andOrderAmountLessThan(BigDecimal value) {
            addCriterion("Order_amount <", value, "orderAmount");
            return (Criteria) this;
        }

        public Criteria andOrderAmountLessThanOrEqualTo(BigDecimal value) {
            addCriterion("Order_amount <=", value, "orderAmount");
            return (Criteria) this;
        }

        public Criteria andOrderAmountIn(List<BigDecimal> values) {
            addCriterion("Order_amount in", values, "orderAmount");
            return (Criteria) this;
        }

        public Criteria andOrderAmountNotIn(List<BigDecimal> values) {
            addCriterion("Order_amount not in", values, "orderAmount");
            return (Criteria) this;
        }

        public Criteria andOrderAmountBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("Order_amount between", value1, value2, "orderAmount");
            return (Criteria) this;
        }

        public Criteria andOrderAmountNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("Order_amount not between", value1, value2, "orderAmount");
            return (Criteria) this;
        }

        public Criteria andPromotionRateIsNull() {
            addCriterion("Promotion_rate is null");
            return (Criteria) this;
        }

        public Criteria andPromotionRateIsNotNull() {
            addCriterion("Promotion_rate is not null");
            return (Criteria) this;
        }

        public Criteria andPromotionRateEqualTo(BigDecimal value) {
            addCriterion("Promotion_rate =", value, "promotionRate");
            return (Criteria) this;
        }

        public Criteria andPromotionRateNotEqualTo(BigDecimal value) {
            addCriterion("Promotion_rate <>", value, "promotionRate");
            return (Criteria) this;
        }

        public Criteria andPromotionRateGreaterThan(BigDecimal value) {
            addCriterion("Promotion_rate >", value, "promotionRate");
            return (Criteria) this;
        }

        public Criteria andPromotionRateGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("Promotion_rate >=", value, "promotionRate");
            return (Criteria) this;
        }

        public Criteria andPromotionRateLessThan(BigDecimal value) {
            addCriterion("Promotion_rate <", value, "promotionRate");
            return (Criteria) this;
        }

        public Criteria andPromotionRateLessThanOrEqualTo(BigDecimal value) {
            addCriterion("Promotion_rate <=", value, "promotionRate");
            return (Criteria) this;
        }

        public Criteria andPromotionRateIn(List<BigDecimal> values) {
            addCriterion("Promotion_rate in", values, "promotionRate");
            return (Criteria) this;
        }

        public Criteria andPromotionRateNotIn(List<BigDecimal> values) {
            addCriterion("Promotion_rate not in", values, "promotionRate");
            return (Criteria) this;
        }

        public Criteria andPromotionRateBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("Promotion_rate between", value1, value2, "promotionRate");
            return (Criteria) this;
        }

        public Criteria andPromotionRateNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("Promotion_rate not between", value1, value2, "promotionRate");
            return (Criteria) this;
        }

        public Criteria andPromotionAmountIsNull() {
            addCriterion("Promotion_amount is null");
            return (Criteria) this;
        }

        public Criteria andPromotionAmountIsNotNull() {
            addCriterion("Promotion_amount is not null");
            return (Criteria) this;
        }

        public Criteria andPromotionAmountEqualTo(BigDecimal value) {
            addCriterion("Promotion_amount =", value, "promotionAmount");
            return (Criteria) this;
        }

        public Criteria andPromotionAmountNotEqualTo(BigDecimal value) {
            addCriterion("Promotion_amount <>", value, "promotionAmount");
            return (Criteria) this;
        }

        public Criteria andPromotionAmountGreaterThan(BigDecimal value) {
            addCriterion("Promotion_amount >", value, "promotionAmount");
            return (Criteria) this;
        }

        public Criteria andPromotionAmountGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("Promotion_amount >=", value, "promotionAmount");
            return (Criteria) this;
        }

        public Criteria andPromotionAmountLessThan(BigDecimal value) {
            addCriterion("Promotion_amount <", value, "promotionAmount");
            return (Criteria) this;
        }

        public Criteria andPromotionAmountLessThanOrEqualTo(BigDecimal value) {
            addCriterion("Promotion_amount <=", value, "promotionAmount");
            return (Criteria) this;
        }

        public Criteria andPromotionAmountIn(List<BigDecimal> values) {
            addCriterion("Promotion_amount in", values, "promotionAmount");
            return (Criteria) this;
        }

        public Criteria andPromotionAmountNotIn(List<BigDecimal> values) {
            addCriterion("Promotion_amount not in", values, "promotionAmount");
            return (Criteria) this;
        }

        public Criteria andPromotionAmountBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("Promotion_amount between", value1, value2, "promotionAmount");
            return (Criteria) this;
        }

        public Criteria andPromotionAmountNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("Promotion_amount not between", value1, value2, "promotionAmount");
            return (Criteria) this;
        }

        public Criteria andOrderStatusIsNull() {
            addCriterion("Order_status is null");
            return (Criteria) this;
        }

        public Criteria andOrderStatusIsNotNull() {
            addCriterion("Order_status is not null");
            return (Criteria) this;
        }

        public Criteria andOrderStatusEqualTo(Integer value) {
            addCriterion("Order_status =", value, "orderStatus");
            return (Criteria) this;
        }

        public Criteria andOrderStatusNotEqualTo(Integer value) {
            addCriterion("Order_status <>", value, "orderStatus");
            return (Criteria) this;
        }

        public Criteria andOrderStatusGreaterThan(Integer value) {
            addCriterion("Order_status >", value, "orderStatus");
            return (Criteria) this;
        }

        public Criteria andOrderStatusGreaterThanOrEqualTo(Integer value) {
            addCriterion("Order_status >=", value, "orderStatus");
            return (Criteria) this;
        }

        public Criteria andOrderStatusLessThan(Integer value) {
            addCriterion("Order_status <", value, "orderStatus");
            return (Criteria) this;
        }

        public Criteria andOrderStatusLessThanOrEqualTo(Integer value) {
            addCriterion("Order_status <=", value, "orderStatus");
            return (Criteria) this;
        }

        public Criteria andOrderStatusIn(List<Integer> values) {
            addCriterion("Order_status in", values, "orderStatus");
            return (Criteria) this;
        }

        public Criteria andOrderStatusNotIn(List<Integer> values) {
            addCriterion("Order_status not in", values, "orderStatus");
            return (Criteria) this;
        }

        public Criteria andOrderStatusBetween(Integer value1, Integer value2) {
            addCriterion("Order_status between", value1, value2, "orderStatus");
            return (Criteria) this;
        }

        public Criteria andOrderStatusNotBetween(Integer value1, Integer value2) {
            addCriterion("Order_status not between", value1, value2, "orderStatus");
            return (Criteria) this;
        }

        public Criteria andOrderStatusDescIsNull() {
            addCriterion("Order_status_desc is null");
            return (Criteria) this;
        }

        public Criteria andOrderStatusDescIsNotNull() {
            addCriterion("Order_status_desc is not null");
            return (Criteria) this;
        }

        public Criteria andOrderStatusDescEqualTo(String value) {
            addCriterion("Order_status_desc =", value, "orderStatusDesc");
            return (Criteria) this;
        }

        public Criteria andOrderStatusDescNotEqualTo(String value) {
            addCriterion("Order_status_desc <>", value, "orderStatusDesc");
            return (Criteria) this;
        }

        public Criteria andOrderStatusDescGreaterThan(String value) {
            addCriterion("Order_status_desc >", value, "orderStatusDesc");
            return (Criteria) this;
        }

        public Criteria andOrderStatusDescGreaterThanOrEqualTo(String value) {
            addCriterion("Order_status_desc >=", value, "orderStatusDesc");
            return (Criteria) this;
        }

        public Criteria andOrderStatusDescLessThan(String value) {
            addCriterion("Order_status_desc <", value, "orderStatusDesc");
            return (Criteria) this;
        }

        public Criteria andOrderStatusDescLessThanOrEqualTo(String value) {
            addCriterion("Order_status_desc <=", value, "orderStatusDesc");
            return (Criteria) this;
        }

        public Criteria andOrderStatusDescLike(String value) {
            addCriterion("Order_status_desc like", value, "orderStatusDesc");
            return (Criteria) this;
        }

        public Criteria andOrderStatusDescNotLike(String value) {
            addCriterion("Order_status_desc not like", value, "orderStatusDesc");
            return (Criteria) this;
        }

        public Criteria andOrderStatusDescIn(List<String> values) {
            addCriterion("Order_status_desc in", values, "orderStatusDesc");
            return (Criteria) this;
        }

        public Criteria andOrderStatusDescNotIn(List<String> values) {
            addCriterion("Order_status_desc not in", values, "orderStatusDesc");
            return (Criteria) this;
        }

        public Criteria andOrderStatusDescBetween(String value1, String value2) {
            addCriterion("Order_status_desc between", value1, value2, "orderStatusDesc");
            return (Criteria) this;
        }

        public Criteria andOrderStatusDescNotBetween(String value1, String value2) {
            addCriterion("Order_status_desc not between", value1, value2, "orderStatusDesc");
            return (Criteria) this;
        }

        public Criteria andOrderCreateTimeIsNull() {
            addCriterion("Order_create_time is null");
            return (Criteria) this;
        }

        public Criteria andOrderCreateTimeIsNotNull() {
            addCriterion("Order_create_time is not null");
            return (Criteria) this;
        }

        public Criteria andOrderCreateTimeEqualTo(Date value) {
            addCriterion("Order_create_time =", value, "orderCreateTime");
            return (Criteria) this;
        }

        public Criteria andOrderCreateTimeNotEqualTo(Date value) {
            addCriterion("Order_create_time <>", value, "orderCreateTime");
            return (Criteria) this;
        }

        public Criteria andOrderCreateTimeGreaterThan(Date value) {
            addCriterion("Order_create_time >", value, "orderCreateTime");
            return (Criteria) this;
        }

        public Criteria andOrderCreateTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("Order_create_time >=", value, "orderCreateTime");
            return (Criteria) this;
        }

        public Criteria andOrderCreateTimeLessThan(Date value) {
            addCriterion("Order_create_time <", value, "orderCreateTime");
            return (Criteria) this;
        }

        public Criteria andOrderCreateTimeLessThanOrEqualTo(Date value) {
            addCriterion("Order_create_time <=", value, "orderCreateTime");
            return (Criteria) this;
        }

        public Criteria andOrderCreateTimeIn(List<Date> values) {
            addCriterion("Order_create_time in", values, "orderCreateTime");
            return (Criteria) this;
        }

        public Criteria andOrderCreateTimeNotIn(List<Date> values) {
            addCriterion("Order_create_time not in", values, "orderCreateTime");
            return (Criteria) this;
        }

        public Criteria andOrderCreateTimeBetween(Date value1, Date value2) {
            addCriterion("Order_create_time between", value1, value2, "orderCreateTime");
            return (Criteria) this;
        }

        public Criteria andOrderCreateTimeNotBetween(Date value1, Date value2) {
            addCriterion("Order_create_time not between", value1, value2, "orderCreateTime");
            return (Criteria) this;
        }

        public Criteria andOrderPayTimeIsNull() {
            addCriterion("Order_pay_time is null");
            return (Criteria) this;
        }

        public Criteria andOrderPayTimeIsNotNull() {
            addCriterion("Order_pay_time is not null");
            return (Criteria) this;
        }

        public Criteria andOrderPayTimeEqualTo(Date value) {
            addCriterion("Order_pay_time =", value, "orderPayTime");
            return (Criteria) this;
        }

        public Criteria andOrderPayTimeNotEqualTo(Date value) {
            addCriterion("Order_pay_time <>", value, "orderPayTime");
            return (Criteria) this;
        }

        public Criteria andOrderPayTimeGreaterThan(Date value) {
            addCriterion("Order_pay_time >", value, "orderPayTime");
            return (Criteria) this;
        }

        public Criteria andOrderPayTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("Order_pay_time >=", value, "orderPayTime");
            return (Criteria) this;
        }

        public Criteria andOrderPayTimeLessThan(Date value) {
            addCriterion("Order_pay_time <", value, "orderPayTime");
            return (Criteria) this;
        }

        public Criteria andOrderPayTimeLessThanOrEqualTo(Date value) {
            addCriterion("Order_pay_time <=", value, "orderPayTime");
            return (Criteria) this;
        }

        public Criteria andOrderPayTimeIn(List<Date> values) {
            addCriterion("Order_pay_time in", values, "orderPayTime");
            return (Criteria) this;
        }

        public Criteria andOrderPayTimeNotIn(List<Date> values) {
            addCriterion("Order_pay_time not in", values, "orderPayTime");
            return (Criteria) this;
        }

        public Criteria andOrderPayTimeBetween(Date value1, Date value2) {
            addCriterion("Order_pay_time between", value1, value2, "orderPayTime");
            return (Criteria) this;
        }

        public Criteria andOrderPayTimeNotBetween(Date value1, Date value2) {
            addCriterion("Order_pay_time not between", value1, value2, "orderPayTime");
            return (Criteria) this;
        }

        public Criteria andOrderGroupSuccessTimeIsNull() {
            addCriterion("Order_group_success_time is null");
            return (Criteria) this;
        }

        public Criteria andOrderGroupSuccessTimeIsNotNull() {
            addCriterion("Order_group_success_time is not null");
            return (Criteria) this;
        }

        public Criteria andOrderGroupSuccessTimeEqualTo(Date value) {
            addCriterion("Order_group_success_time =", value, "orderGroupSuccessTime");
            return (Criteria) this;
        }

        public Criteria andOrderGroupSuccessTimeNotEqualTo(Date value) {
            addCriterion("Order_group_success_time <>", value, "orderGroupSuccessTime");
            return (Criteria) this;
        }

        public Criteria andOrderGroupSuccessTimeGreaterThan(Date value) {
            addCriterion("Order_group_success_time >", value, "orderGroupSuccessTime");
            return (Criteria) this;
        }

        public Criteria andOrderGroupSuccessTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("Order_group_success_time >=", value, "orderGroupSuccessTime");
            return (Criteria) this;
        }

        public Criteria andOrderGroupSuccessTimeLessThan(Date value) {
            addCriterion("Order_group_success_time <", value, "orderGroupSuccessTime");
            return (Criteria) this;
        }

        public Criteria andOrderGroupSuccessTimeLessThanOrEqualTo(Date value) {
            addCriterion("Order_group_success_time <=", value, "orderGroupSuccessTime");
            return (Criteria) this;
        }

        public Criteria andOrderGroupSuccessTimeIn(List<Date> values) {
            addCriterion("Order_group_success_time in", values, "orderGroupSuccessTime");
            return (Criteria) this;
        }

        public Criteria andOrderGroupSuccessTimeNotIn(List<Date> values) {
            addCriterion("Order_group_success_time not in", values, "orderGroupSuccessTime");
            return (Criteria) this;
        }

        public Criteria andOrderGroupSuccessTimeBetween(Date value1, Date value2) {
            addCriterion("Order_group_success_time between", value1, value2, "orderGroupSuccessTime");
            return (Criteria) this;
        }

        public Criteria andOrderGroupSuccessTimeNotBetween(Date value1, Date value2) {
            addCriterion("Order_group_success_time not between", value1, value2, "orderGroupSuccessTime");
            return (Criteria) this;
        }

        public Criteria andOrderVerifyTimeIsNull() {
            addCriterion("Order_verify_time is null");
            return (Criteria) this;
        }

        public Criteria andOrderVerifyTimeIsNotNull() {
            addCriterion("Order_verify_time is not null");
            return (Criteria) this;
        }

        public Criteria andOrderVerifyTimeEqualTo(Date value) {
            addCriterion("Order_verify_time =", value, "orderVerifyTime");
            return (Criteria) this;
        }

        public Criteria andOrderVerifyTimeNotEqualTo(Date value) {
            addCriterion("Order_verify_time <>", value, "orderVerifyTime");
            return (Criteria) this;
        }

        public Criteria andOrderVerifyTimeGreaterThan(Date value) {
            addCriterion("Order_verify_time >", value, "orderVerifyTime");
            return (Criteria) this;
        }

        public Criteria andOrderVerifyTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("Order_verify_time >=", value, "orderVerifyTime");
            return (Criteria) this;
        }

        public Criteria andOrderVerifyTimeLessThan(Date value) {
            addCriterion("Order_verify_time <", value, "orderVerifyTime");
            return (Criteria) this;
        }

        public Criteria andOrderVerifyTimeLessThanOrEqualTo(Date value) {
            addCriterion("Order_verify_time <=", value, "orderVerifyTime");
            return (Criteria) this;
        }

        public Criteria andOrderVerifyTimeIn(List<Date> values) {
            addCriterion("Order_verify_time in", values, "orderVerifyTime");
            return (Criteria) this;
        }

        public Criteria andOrderVerifyTimeNotIn(List<Date> values) {
            addCriterion("Order_verify_time not in", values, "orderVerifyTime");
            return (Criteria) this;
        }

        public Criteria andOrderVerifyTimeBetween(Date value1, Date value2) {
            addCriterion("Order_verify_time between", value1, value2, "orderVerifyTime");
            return (Criteria) this;
        }

        public Criteria andOrderVerifyTimeNotBetween(Date value1, Date value2) {
            addCriterion("Order_verify_time not between", value1, value2, "orderVerifyTime");
            return (Criteria) this;
        }

        public Criteria andOrderSettleTimeIsNull() {
            addCriterion("Order_settle_time is null");
            return (Criteria) this;
        }

        public Criteria andOrderSettleTimeIsNotNull() {
            addCriterion("Order_settle_time is not null");
            return (Criteria) this;
        }

        public Criteria andOrderSettleTimeEqualTo(Date value) {
            addCriterion("Order_settle_time =", value, "orderSettleTime");
            return (Criteria) this;
        }

        public Criteria andOrderSettleTimeNotEqualTo(Date value) {
            addCriterion("Order_settle_time <>", value, "orderSettleTime");
            return (Criteria) this;
        }

        public Criteria andOrderSettleTimeGreaterThan(Date value) {
            addCriterion("Order_settle_time >", value, "orderSettleTime");
            return (Criteria) this;
        }

        public Criteria andOrderSettleTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("Order_settle_time >=", value, "orderSettleTime");
            return (Criteria) this;
        }

        public Criteria andOrderSettleTimeLessThan(Date value) {
            addCriterion("Order_settle_time <", value, "orderSettleTime");
            return (Criteria) this;
        }

        public Criteria andOrderSettleTimeLessThanOrEqualTo(Date value) {
            addCriterion("Order_settle_time <=", value, "orderSettleTime");
            return (Criteria) this;
        }

        public Criteria andOrderSettleTimeIn(List<Date> values) {
            addCriterion("Order_settle_time in", values, "orderSettleTime");
            return (Criteria) this;
        }

        public Criteria andOrderSettleTimeNotIn(List<Date> values) {
            addCriterion("Order_settle_time not in", values, "orderSettleTime");
            return (Criteria) this;
        }

        public Criteria andOrderSettleTimeBetween(Date value1, Date value2) {
            addCriterion("Order_settle_time between", value1, value2, "orderSettleTime");
            return (Criteria) this;
        }

        public Criteria andOrderSettleTimeNotBetween(Date value1, Date value2) {
            addCriterion("Order_settle_time not between", value1, value2, "orderSettleTime");
            return (Criteria) this;
        }

        public Criteria andOrderModifyAtIsNull() {
            addCriterion("Order_modify_at is null");
            return (Criteria) this;
        }

        public Criteria andOrderModifyAtIsNotNull() {
            addCriterion("Order_modify_at is not null");
            return (Criteria) this;
        }

        public Criteria andOrderModifyAtEqualTo(Date value) {
            addCriterion("Order_modify_at =", value, "orderModifyAt");
            return (Criteria) this;
        }

        public Criteria andOrderModifyAtNotEqualTo(Date value) {
            addCriterion("Order_modify_at <>", value, "orderModifyAt");
            return (Criteria) this;
        }

        public Criteria andOrderModifyAtGreaterThan(Date value) {
            addCriterion("Order_modify_at >", value, "orderModifyAt");
            return (Criteria) this;
        }

        public Criteria andOrderModifyAtGreaterThanOrEqualTo(Date value) {
            addCriterion("Order_modify_at >=", value, "orderModifyAt");
            return (Criteria) this;
        }

        public Criteria andOrderModifyAtLessThan(Date value) {
            addCriterion("Order_modify_at <", value, "orderModifyAt");
            return (Criteria) this;
        }

        public Criteria andOrderModifyAtLessThanOrEqualTo(Date value) {
            addCriterion("Order_modify_at <=", value, "orderModifyAt");
            return (Criteria) this;
        }

        public Criteria andOrderModifyAtIn(List<Date> values) {
            addCriterion("Order_modify_at in", values, "orderModifyAt");
            return (Criteria) this;
        }

        public Criteria andOrderModifyAtNotIn(List<Date> values) {
            addCriterion("Order_modify_at not in", values, "orderModifyAt");
            return (Criteria) this;
        }

        public Criteria andOrderModifyAtBetween(Date value1, Date value2) {
            addCriterion("Order_modify_at between", value1, value2, "orderModifyAt");
            return (Criteria) this;
        }

        public Criteria andOrderModifyAtNotBetween(Date value1, Date value2) {
            addCriterion("Order_modify_at not between", value1, value2, "orderModifyAt");
            return (Criteria) this;
        }

        public Criteria andCustomParametersIsNull() {
            addCriterion("Custom_parameters is null");
            return (Criteria) this;
        }

        public Criteria andCustomParametersIsNotNull() {
            addCriterion("Custom_parameters is not null");
            return (Criteria) this;
        }

        public Criteria andCustomParametersEqualTo(String value) {
            addCriterion("Custom_parameters =", value, "customParameters");
            return (Criteria) this;
        }

        public Criteria andCustomParametersNotEqualTo(String value) {
            addCriterion("Custom_parameters <>", value, "customParameters");
            return (Criteria) this;
        }

        public Criteria andCustomParametersGreaterThan(String value) {
            addCriterion("Custom_parameters >", value, "customParameters");
            return (Criteria) this;
        }

        public Criteria andCustomParametersGreaterThanOrEqualTo(String value) {
            addCriterion("Custom_parameters >=", value, "customParameters");
            return (Criteria) this;
        }

        public Criteria andCustomParametersLessThan(String value) {
            addCriterion("Custom_parameters <", value, "customParameters");
            return (Criteria) this;
        }

        public Criteria andCustomParametersLessThanOrEqualTo(String value) {
            addCriterion("Custom_parameters <=", value, "customParameters");
            return (Criteria) this;
        }

        public Criteria andCustomParametersLike(String value) {
            addCriterion("Custom_parameters like", value, "customParameters");
            return (Criteria) this;
        }

        public Criteria andCustomParametersNotLike(String value) {
            addCriterion("Custom_parameters not like", value, "customParameters");
            return (Criteria) this;
        }

        public Criteria andCustomParametersIn(List<String> values) {
            addCriterion("Custom_parameters in", values, "customParameters");
            return (Criteria) this;
        }

        public Criteria andCustomParametersNotIn(List<String> values) {
            addCriterion("Custom_parameters not in", values, "customParameters");
            return (Criteria) this;
        }

        public Criteria andCustomParametersBetween(String value1, String value2) {
            addCriterion("Custom_parameters between", value1, value2, "customParameters");
            return (Criteria) this;
        }

        public Criteria andCustomParametersNotBetween(String value1, String value2) {
            addCriterion("Custom_parameters not between", value1, value2, "customParameters");
            return (Criteria) this;
        }

        public Criteria andPIdIsNull() {
            addCriterion("P_id is null");
            return (Criteria) this;
        }

        public Criteria andPIdIsNotNull() {
            addCriterion("P_id is not null");
            return (Criteria) this;
        }

        public Criteria andPIdEqualTo(String value) {
            addCriterion("P_id =", value, "pId");
            return (Criteria) this;
        }

        public Criteria andPIdNotEqualTo(String value) {
            addCriterion("P_id <>", value, "pId");
            return (Criteria) this;
        }

        public Criteria andPIdGreaterThan(String value) {
            addCriterion("P_id >", value, "pId");
            return (Criteria) this;
        }

        public Criteria andPIdGreaterThanOrEqualTo(String value) {
            addCriterion("P_id >=", value, "pId");
            return (Criteria) this;
        }

        public Criteria andPIdLessThan(String value) {
            addCriterion("P_id <", value, "pId");
            return (Criteria) this;
        }

        public Criteria andPIdLessThanOrEqualTo(String value) {
            addCriterion("P_id <=", value, "pId");
            return (Criteria) this;
        }

        public Criteria andPIdLike(String value) {
            addCriterion("P_id like", value, "pId");
            return (Criteria) this;
        }

        public Criteria andPIdNotLike(String value) {
            addCriterion("P_id not like", value, "pId");
            return (Criteria) this;
        }

        public Criteria andPIdIn(List<String> values) {
            addCriterion("P_id in", values, "pId");
            return (Criteria) this;
        }

        public Criteria andPIdNotIn(List<String> values) {
            addCriterion("P_id not in", values, "pId");
            return (Criteria) this;
        }

        public Criteria andPIdBetween(String value1, String value2) {
            addCriterion("P_id between", value1, value2, "pId");
            return (Criteria) this;
        }

        public Criteria andPIdNotBetween(String value1, String value2) {
            addCriterion("P_id not between", value1, value2, "pId");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}